using FluentNHibernate.Mapping;

namespace Neturion.Dados
{
    public class MapSituacaoCheque : ClassMap<SituacaoCheque>
    {
        public MapSituacaoCheque()
        {
            Table("situacoescheques");
            Id(x => x.SituacaoChequeId);
            Map(x => x.EnumSituacaoCheque).CustomType(typeof(EnumSituacaoCheque));
            Map(x => x.DataSituacao);
            References(x => x.Cheque).Not.LazyLoad();
            HasManyToMany<MotivoSituacaoCheque>(x => x.ListaMotivosSituacaoCheque)
                .Table("situacaocheque_motivosituacoes")
                .ParentKeyColumn("SituacaoChequeId")
                .ChildKeyColumn("MotivoSituacaoChequeId")
                .Not.LazyLoad()
                .Cascade.AllDeleteOrphan();
        }
    }
}